void IG_SetPrintToken( int entID, const char *data );
void IG_SetStringPackage( int entID, const char *data );
//NOTENOTE: The enums and tables in this file will obviously complain if they are included multiple times, don't do that
typedef enum //# setType_e
{
//# #sep Parm strings
SET_PARM1 = 0,//## %s="" # Set entity parm1
SET_PARM2,//## %s="" # Set entity parm2
SET_PARM3,//## %s="" # Set entity parm3
SET_PARM4,//## %s="" # Set entity parm4
SET_PARM5,//## %s="" # Set entity parm5
SET_PARM6,//## %s="" # Set entity parm6
SET_PARM7,//## %s="" # Set entity parm7
SET_PARM8,//## %s="" # Set entity parm8
//# #Console commands, subtitle commands
SET_DISCONNECT, //## #send disconnect
SET_MAINMENU, //## #go to main menu
SET_CONSOLE_COMMAND, //## %s="NULL" # Issue this command to the console
SET_CVAR, //## %s="CVAR_NAME VALUE" # Change this CVAR_NAME to the following VALUE
SET_STRING_PACKAGE, //## %s="NULL" # Name of the string package for tokens
SET_PRINT_TOKEN, //## %s="NULL" # Name of token to print out as subtitle
SET_MUSIC_PERCENTAGE, //## %f="0.0" # Set the music to be this percetage of what it currently is (e.g. .5 will turn it down 1/2 of current volume)
SET_HUD_MAIN, //## %s="NULL" # name of Hud to set
SET_HUD_WEAPONS, //## %s="NULL" # name of Hud to set
SET_PLAYERHEALTH_OLD, //## #call this if you want to set the player health to g_playerHealthOld
SET_PLAYERARMOR_OLD, //## #call this if you want to set the player armor to g_playerArmorOld
SET_SAVE_PLAYERHEALTH, //## #call this if you want to save the player health to g_playerHealthOld
SET_SAVE_PLAYERARMOR, //## #call this if you want to savethe player armor to g_playerArmorOld
SET_WORLD_DEATH_PAUSE, //## #call this to freeze the world, intended for death scripts (ideal after fading out)
// NOTE!!! If you add any other SET_xxxxxxSCRIPT types, make sure you update the 'case' statements in
// ICARUS_InterrogateScript() (game/g_ICARUS.cpp), or the script-precacher won't find them.
//# #sep Scripts and other file paths
//SET_SPAWNSCRIPT,//## %s="NULL" !!"Q:\quake\baseEF\real_scripts\!!#*.txt" # Script to run when spawned //0 - do not change these, these are equal to BSET_SPAWN, etc
//SET_USE_SCRIPT,//## %s !!"S:\base\scripts\!!#*.txt" # Script to run when used
SET_PLAYER_USE_SCRIPT,//## %s !!"S:\base\scripts\!!#*.txt" # Script to run when player uses
SET_DEATH_SCRIPT,//## %s !!"S:\base\scripts\!!#*.txt" # Script to run when used
SET_PAIN_SCRIPT,//## %s !!"S:\base\scripts\!!#*.txt" # Script to run when used
SET_SPAWN_SCRIPT,//## %s !!"S:\base\scripts\!!#*.txt" # Script to run when used
SET_VIEW_SCRIPT,//## %s="NULL" !!"S:\base\scripts\!!#*.txt" # Script to run when NPC sees enemy
SET_ANY_VIEW_SCRIPT,//## %s="NULL" !!"S:\base\scripts\!!#*.txt" # Script to run when NPC sees any NPC or player
SET_PLAYER_VIEW_SCRIPT,//## %s="NULL" !!"S:\base\scripts\!!#*.txt" # Script to run when NPC sees player
SET_HEAR_SCRIPT,//## %s="NULL" !!"S:\base\scripts\!!#*.txt" # Script to run when NPC hears any enemy or player
SET_KO_SCRIPT,//## %s="NULL" !!"S:\base\scripts\!!#*.txt" # Script to run when NPC is knocked out
SET_CONTACT_SCRIPT,//## %s="NULL" !!"S:\base\scripts\!!#*.txt" # Script to run when NPC sees enemy or evidence of enemy
SET_WORLD_HEAR_SCRIPT,//## %s="NULL" !!"S:\base\scripts\!!#*.txt" # Script to run first time player sound is above 0.7
SET_PLAYER_CAM_DEATH,//## %t="BOOL_TYPES" # turn the player death camera (roff for dropping player to ground) OFF or ON (defaults ON)
//# #sep Standard strings
SET_NAME,//## %s="NULL" # Set/change your targetname
SET_CAMERA_GROUP,//## %s="NULL" # Set/change your cameraGroup for camera FOLLOW commands
SET_FACE_TARGET, //## %s="NULL" # Set/change your face target (NOT supported for npc's)
SET_ENEMY, //## %s="NULL" # Set/change your enemy
SET_HITLOC, //## %t="HITLOC" # Set/change your hit location (for shooting other NPC's and players)
SET_FAKEGUN, //## %s="NULL" # Set/change targetname of fake gun (for using SET_HEALTH to kill NPCs)
SET_PLAYER_VIEW, //## %t="BOOL_TYPES" # attach camera to brush model child (on/off)
SET_VIEW_PARENT, //## %s="NULL" # Set targetname of brush model for SET_PLAYER_VIEW command
SET_VIEW_CHILD, //## %s="NULL" # Set targetname of brush model child for SET_PLAYER_VIEW command
SET_INVIEW_WPN, //## %t="BOOL_TYPES" # toggle inview weapon model (on/off)
SET_ADD_WPN, //## %s="NULL" # add a weapon to the player's inventory
SET_REMOVE_WPN, //## %s="NULL" # remove a weapon from the player's inventory
SET_ENABLE, //## %t="BOOL_TYPES" # enable/disable affected device (not for NPCs!!!)
SET_EMPLACED, //## %s="NULL" # force this entity onto emplaced weapon with targetname, NULL turns off
SET_RELEASE_ONCONTACT, //## %t="BOOL_TYPES_REL" # npc will be released from script when he sees or is shot by some enemy
SET_GOAL_RELEASE, //## %t="GOAL_REL" # GO: ignore enemies when in goal, PAUSE: default combat AI for a little while, STOP: default combat AI until enemies gone, default is PAUSE, set pause time with SET_GOAL_PAUSE
SET_GOAL_PAUSE, //## %f="5000" # For PAUSE mode in goals, NPCs will stop for this many ms and fight bad guys
SET_NAVIGATION, //## %t="BOOL_TYPES" # turn navpoint usage on(1) or off(0)
SET_TASK_FLUSH, //## %t="BOOL_TYPES" # set to ON to flush all pending script tasks
SET_ROFF_TRANSLATED, //## %t="BOOL_TYPES" # set to ON and when the camera is roffed it will play it translated
SET_PLAYERALWAYS_HURT, //## %t="BOOL_TYPES" # turn ON ability for player to always hurt this npc, regardless of invicible setting
SET_ANIM, //## %s="NULL" # plays an animation this many times (use string provided from SklView)
SET_ANIM_PAIN, //## %t="HITLOC" # When killing/hurting a guy in a script, you can set his death/pain animation here
SET_ANIM_OFF, //## %t="SKEL" # turn animations on this skel off (back to default)
//SET_ANIM_ALL_OFF, //## %t="BOOL_TYPES" # turn all animations on all skelements off (back to default)
SET_ANIM_FLUSH, //## %t="BOOL_TYPES" # flush all animations (returns all to stationary)
SET_ANIM_LOOP,//## %t="BOOL_TYPES"
SET_ANIM_EYES, //## %t="BOOL_TYPES" # set to OFF to stop blinking (use only in special cases- see Ben)
//# #sep Animation tables (override specifics)
SET_MOOD,//## %t="MOOD"
SET_STANCE,//## %t="STANCE"
SET_HAND_SIGNAL,//## %t="HANDSIGNAL"
//# #sep Task/Goal tables
//in-bhc tables
SET_TASK,//## %t="TASK_TYPES" # Set/change your current task
SET_GOAL,//## %t="GOAL_TYPES" # Set/change your team goal (for TeamCommander NPCs)
SET_GOALFLUSH, //## %t="BOOL_TYPES" # Set to on(1) to flush goals. Set to off(0) to again accept goals.
SET_NAVGOAL,//## %s="NULL" # Set/change your navgoal
SET_NAVGOAL2,//## %s="NULL" # Set/change your 2nd navgoal (mostly for designer assisted Patrols)
SET_NAVGOAL3,//## %s="NULL" # Set/change your 3rd navgoal (mostly for designer assisted Patrols)
SET_AREAGOAL,//## %s="NULL" # Set/change your area goal
SET_AREAGOAL2,//## %s="NULL" # Set/change your secondary area goal (mostly for flank area goal)
SET_VECGOAL,//## %s="NULL" # Set an arbitrary point on the map (x,y,z) to go to.
SET_ENTGOAL,//## %s="NULL" # Set to go to an entity the map.
SET_ENTGOAL2,//## %s="NULL" # Backup ent goal
SET_ENTGOAL3,//## %s="NULL" # Backup ent goal
SET_ENTGOAL4,//## %s="NULL" # Backup ent goal
SET_INVENTORY_ACTION,//## %t="INVENTORY_ACTION" # Set the type of action to do on the inventory task
SET_TASK_SPEED, //## %t="SPEED" # Set the speed to use in a specified SET_TASK (e.g. walk)
SET_TASK_PAUSE, //## %f="1000" # Set the pause time between navpoints (only supports soldiers/sargeants w/out partners)
SET_ATTACK, //## %t="BOOL_TYPES" # Set to on(1) to attack (same as SET_TASK ATTACK), off(0) to stop attacking
SET_TEAM, //## %t="TEAM_TYPES" # Set this NPC or Player to the given team.
SET_BLOCK_RETRY, //## %f="0" # Set the number of blocks needed before a replan on MoveToEnt- 0 for never replan
//# #sep Face Angles tables
SET_LOOK_TARGET,//## %s="NULL" # Set/change your current look target (look at this entity)
SET_LOOK_POINT, //## %v="0.0 0.0 0.0" # Set/change your current look target to be this point in space
SET_LOOK_ANGLE, //## %f="0.0" # Set/change your current look target by this degree (e.g. look over 10 degrees)
SET_LOOK_TYPE, //## %t="LOOK_TYPES" # Use this to set the type of looktarget, lookpoint or lookangle you want.
SET_LOOK_OFF, //## %t="LOOK_TYPES" # Use this to turn off a looking command for the given type
SET_LOOK_PARENT, //## %t="BOOL_TYPES" # Turn on/off parent activation of joint commands (once set, this stays on entity until set again. Default is ON)
SET_LOOK_ROOT, //## %t="BOOL_TYPES" # Turn on/off root activation of joint commands (once set, this stays on entity until set again. Default is ON)
SET_AIM,//## # Aim Gun at Current Focus
SET_SEARCH, //## %v="30.0 50.0 0.0" # Set/change your search angles
SET_SEARCH_OFF, //## #turn off SEARCH
SET_TALK_TO,//## %s="NULL" # Set/change your current talking to target (turn towards this entity to talk to it)
SET_TALK_TO_NOROOT,//## %s="NULL" # THIS IS NO LONGER VALID! use TALK_TO instead and set SET_LOOK_ROOT OFF
SET_SCOTT_MCNUTT, //## %t="MOOD" # Switch Scott McNutt Off or On (use with caution)
SET_SPECIAL_USE, //## %s="NULL" # Set to targetname to use (must be inside Affect of some NPC)
SET_VIOLENCE_USE, //## %s="NULL" # Set to targetname to use (this is a use that will only happen if the violence lock is not on)
SET_CAMERA_NOHUD, //## %t="BOOL_TYPES" # Set to true to not allow enabling of camera to letterbox screen
//# #sep Defunct or Not yet implemented tables (don't use these)